import "reflect-metadata";

export function InjectField(injectId: string): PropertyDecorator {
  return (targetClassPrototype, propertyKey) => {
    const PropClass = Reflect.getMetadata(
      "design:type",
      targetClassPrototype,
      propertyKey
    );
    const PropClassObj = new PropClass();
    console.log(PropClassObj);

    Reflect.defineMetadata(
      "prop",
      "属性上的元数据",
      targetClassPrototype,
      propertyKey
    );
  };
}

// 内置类型键：如 design:type（属性类型）、design:paramtypes（参数类型）、design:returntype（返回值类型）。
